Cette étape de 191 km relie Saint-Pourçain-sur-Sioule, dans l'Allier à Lyon, dans le Rhône. Elle compte sept difficultés répertoriées pour le classement de meilleur grimpeur : les côtes de Marcigny, de la Croix Couverte, de Lozanne, de la Duchère, et de la Croix Rousse, toutes de quatrième catégorie, ainsi que la côte de Thizy-les-Bourgs et le col du Pilon (727 m), de troisième catégorie[1].
Les équipes Euskaltel Euskadi et Lampre-Merida, dont aucun coureur n'est à l’avant, mènent le peloton pour essayer de revenir sur l’échappée. Ne parvenant pas à rejoindre les dix-huit fuyards, ils cessent la chasse à quatre-vingts kilomètres de l’arrivée. Au sprint intermédiaire de Thizy-les-Bourgs, Rojas passe le premier. Au sommet de la côte de la même localité, les dix-huit coureurs ont 3 minutes 50 secondes d'avance sur le peloton, tandis que Johnny Hoogerland (Vacansoleil DCM), accompagné de Damiano Cunego (Lampre-Merida), se lancent en vain dans une poursuite. Hoogerland part seul dans le col du pilon, revient à cinquante secondes de la tête de la course, mais sur les conseils de son directeur sportif, se relève. Hoogerland et Cunego sont repris par le peloton.
À vingt-cinq kilomètres de l’arrivée, le groupe des dix-huit échappés a six minutes et trente secondes d'avance. C’est à ce moment que viennent les premières offensives, portées par Albasini et Millar, sans succès. Bakelants bascule en tête de la côte de la Duchère, mais se fait reprendre dans la descente. Simon passe à son tour à l'offensive. Il prend jusqu’à 20 secondes d'avance sur ses poursuivants, à dix kilomètres de la ligne d’arrivée. À deux kilomètres, Bak essaie de combler les dix secondes de retard qui le sépare de Simon. Il est suivi de Bakelants et de Gautier. Simon est rejoint par Albasini et s’accroche dans la roue de celui-ci. À quelques centaines de mètres de l’arrivée, les douze coureurs restants de l'échappée sont regroupés. Albasini mène le sprint mais Trentin le passe sur la ligne. Celui-ci offre une troisième victoire en quatre jours à son équipe en remportant sa première victoire d’étape sur le tour. Talansky prend la troisième place. Le peloton finit la course avec plus de sept minutes de retard. Christopher Froome (Sky) conserve le maillot jaune.